package com.googlecode.mad.mvntools.common.interfaces;

/**
 * - Apache License 2.0 - <br>
 * Defines the basyc file manipulation stuff <br>
 * <br>
 * LastChangedBy: $Author: marthaler.worb@gmail.com $<br>
 * LastChangedDate: $Date: 2010-12-29 16:11:32 +0000 (Wed, 29 Dec 2010) $<br>
 * 
 * @author daniel marthaler
 * @version $Revision: 13 $
 * @since 27.12.2010
 */
public interface IFileUtil {
    
    /**
     * @return Loads a String out of a File
     */
    String loadFile(final String name);
    
    /**
     * @return Loads a String out of a File that is in a .jar
     */
    @SuppressWarnings("rawtypes")
    String loadFileFromJar(final String name, final Class root);
    
    /**
     * @return Replaces a file with new Content
     */
    void replaceFileWithNewContent(final String file, final String content);
    
    /**
     * @return Recursivly delete a File or a folder
     */
    void deleteFileOrFolder(final String file);
    
}